home *** CD-ROM | disk | FTP | other *** search
- /*_ setjmp.h Fri Apr 28 1989 Modified by: Walter Bright */
- /* Copyright (C) 1985-1989 by Walter Bright */
- /* All Rights Reserved */
-
- #ifndef __SETJMP_H
- #define __SETJMP_H 1
-
- #if __cplusplus
- extern "C" {
- #endif
-
- #if __INTSIZE == 4
- typedef int jmp_buf[10];
- #elif _WINDOWS
- typedef int jmp_buf[9];
- #else
- typedef int jmp_buf[9];
- #endif
-
- #ifdef __STDC__
- #define __CDECL
- #define __STDCALL
- #else
- #define __CDECL __cdecl
- #define __STDCALL __stdcall
- #endif
-
- #if __OS2__ && __INTSIZE == 4
- #define __CLIB __STDCALL
- #else
- #define __CLIB __CDECL
- #endif
-
- #ifdef _WINDOWS
- int __far __pascal Catch(int __far *);
- void __far __pascal Throw(int const __far *,int);
- #define setjmp(A) Catch(A)
- #define longjmp(A,B) Throw(A,B)
- #else
- int __CLIB setjmp(jmp_buf);
- void __CLIB longjmp(jmp_buf,int);
- #endif
-
- #if __cplusplus
- }
- #endif
-
- #endif /* __SETJMP_H */
-
-